package org.jeecg.glr.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.util.Date;

/**
 * @Description: 路灯管理
 * @Author: jeecg-boot
 * @Date:   2020-03-05
 * @Version: V1.0
 */
@Data
@TableName("glr_light")
public class GlrLight implements Serializable {
    private static final long serialVersionUID = 1L;
    
	/**主键*/
	@TableId(type = IdType.UUID)
    private String id;
	/**编号*/
	@Excel(name = "路灯编号", width = 15)
    private String code;
	/**所属路灯种类编号*/
	@Excel(name = "路灯种类编号", width = 15)
    private String lightTypeCode;
	/**是否智慧灯杆sys_yn*/
	@Excel(name = "是否智慧灯杆", width = 15)
	@Dict(dicCode = "sys_yn")
	private String isWisdom;
	/**网关编号*/
	@Excel(name = "所属网关编号", width = 32)
    private String gateWayCode;
	@TableField(exist = false)
	private String gateWayName;
	/**竣工日期*/
	@Excel(name = "竣工日期", width = 15, format = "yyyy-MM-dd")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    private Date finishDate;
	/**所属路灯灯杆编号*/
	@Excel(name = "所属灯杆编号", width = 15)
	private String lightPoleCode;
	/**项目编号*/
	@Excel(name = "项目编号", width = 15)
	private String projectCode;

	//通信方式
	@Excel(name = "通信方式", width = 15)
	private String socketType;

	/**经度*/
	@Excel(name = "经度", width = 15)
    private String longitude;
	/**纬度*/
	@Excel(name = "纬度", width = 15)
    private String latitude;
	/**描述*/
	@Excel(name = "位置描述", width = 512)
    private String posDesc;
	/**当前电压*/
	@Excel(name = "当前电压", width = 15)
    private Double currentVol;
	/**当前电流*/
	@Excel(name = "当前电流", width = 15)
    private Double currentCur;
	/**当前亮度*/
	@Excel(name = "当前亮度", width = 15)
    private Double currentBrightness;
	/**视在功率*/
	@Excel(name = "视在功率", width = 15)
    private Double currentApparentPower;
	/**功率因素*/
	@Excel(name = "功率因素", width = 15)
    private Double currentPowerFactor;
	/**当前功率*/
	@Excel(name = "当前功率", width = 15)
    private Double currentPower;
	/**当前状态*/
	@Excel(name = "当前状态", width = 15)
    private String currentStatus;
	/**当前温度*/
	@Excel(name = "当前温度", width = 15)
    private Double currentTemperature;
	/**所属公司*/
	@Excel(name = "所属公司", width = 15)
    private String sysCompanyCode;
	/**创建人*/
	@Excel(name = "创建人", width = 15)
    private String createBy;
	/**创建日期*/
	@Excel(name = "创建日期", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private Date createTime;
	/**更新人*/
	@Excel(name = "更新人", width = 15)
    private String updateBy;
	/**更新日期*/
	@Excel(name = "更新日期", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private Date updateTime;
	/**所属部门*/
	@Excel(name = "所属部门", width = 15)
    private String sysOrgCode;

	private String type;

    @TableField(exist = false)
	private String typeName;


	@TableField(exist = false)
	private String projectName;

	@TableField(exist = false)
	private String lightCode;
	@TableField(exist = false)
	private Integer brightValue;
}
